package com.wing.sell.model.request;

import com.wing.sell.model.entity.DeliveryRecord;
import com.wing.sell.model.entity.DeliveryRecordDetail;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 交付记录表Form
 *
 * @author
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
public class DeliveryRecordForm {

    /**
     * ID
     */
    private Long id;

    /**
     * 创建者
     */
    private Long creator;

    /**
     * 修改者
     */
    private Long modifier;

    /**
     * 创建人
     */
    private String creatorName;

    /**
     * 修改人
     */
    private String modifierName;

    /**
     * 发货商
     */
    private String customerName;

    /**
     * 发货商id
     */
    private String customerId;

    /**
     * 客户联系人
     */
    private String customerConcat;

    /**
     * 联系人电话
     */
    private String customerMoble;

    private LocalDateTime orderPlanOnTime;
    private LocalDateTime orderCreateTime;

    /**
     * 车牌号
     */
    private String carNo;

    /**
     * 物流单号
     */
    private String expressCode;

    /**
     * 物流企业id
     */
    private Long companyId;

    /**
     * 运输方式
     */
    private DeliveryRecord.TransportType transportType;

    /**
     * 结算方式
     */
    private String transportSettlementId;

    /**
     * 运输费用
     */
    private BigDecimal transportExpenses;

    /**
     * 销售订单id
     */
    private Long saleOrderId;

    /**
     * 销售编号
     */
    private String saleOrderCode;

    /**
     * 交付记录编号
     */
    private String recordCode;

    /**
     * day
     */
    private Integer day;

    /**
     * no
     */
    private Integer no;

    /**
     * 状态：0-待签收，1-已签收
     */
    private Integer status;


    /**
     * 发货类型id
     */
    private Long typeId;

    /**
     * 发货类型code
     */
    private String typeCode;

    /**
     * 仓库id
     */
    private Long warehouseId;

    /**
     * 发货仓库类型
     */
    private Long warehouseTypeId;

    /**
     * 备注
     */
    private String remark;


    /**
     * 详情信息
     */
    private List<DeliveryRecordDetail> deliveryRecordDetails;




    public interface Add{}

    public interface Update{}
}
